Using SQL with Prolog to improve performance with large databases

نویسنده

  • Kevin Boone
چکیده

This article describes how the performance of certain Prolog programs can be improved by storing large lists of facts in an SQL database rather than as Prolog facts. In experiments that will be described, the speed improvements ranged from negligible to a factor of over 200. This improvement comes about because SQL servers are strongly optimized for searching large, flat tables. However, modern Prolog compilers are increasingly good at handling large volumes of data, and not all applications will benefit from the use of SQL. This article suggests which types of application are likely to benefit, and discusses other ways in which the use of SQL may be of benefit in Prolog programming.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Superjoin Algorithm for Deductive Databases

This paper describes a join algorithm suitable for deductive and relational databases which are accessed by computers with large main memories. Using multi-key hashing and appropriate buffering, joins can be performed on very large relations more eficiently than with existing methods. Furthermore, this algorithm jirs naturally into top-down Prolog computations and can be made very jlexible by i...

متن کامل

Masque/sql{ an Eecient and Portable Natural Language Query Interface for Relational Databases

1 Abstract Masque is a powerful and portable natural language front-end for Prolog databases. It answers written English questions by generating Prolog queries, which are evaluated against the Prolog database. This paper describes a modiied version of Masque, called Masque/sql, which answers English questions by generating and executing SQL code. Masque/sql maintains the full linguistic coverag...

متن کامل

Masque/sql{ An E cient and Portable Natural Language Query Interface for Relational Databases

Masque is a powerful and portable natural language front-end for Prolog databases. It answers written English questions by generating Prolog queries, which are evaluated against the Prolog database. This paper describes a modi ed version ofMasque, called Masque/sql, which answers English questions by generating and executing SQL code. Masque/sql maintains the full linguistic coverage of the ori...

متن کامل

Syntactic integration of external languages in Prolog

Todays applications are typically programmed in multiple languages, using SQL to access databases, JavaScript to make the (web-based) user interface interactive, etc. Prolog can cooperate to this orchestra using two views: as a logic server component or as ‘glue’. In this article we concentrate on the ‘glue’ view, which implies that we must be able to ‘talk’ the language of other components. In...

متن کامل

OBDA Constraints for Effective Query Answering (Extended Version)

In Ontology Based Data Access (OBDA) users pose SPARQL queries over an ontology that lies on top of relational datasources. These queries are translated on-the-fly into SQL queries by OBDA systems. Standard SPARQL-to-SQL translation techniques in OBDA often produce SQL queries containing redundant joins and unions, even after a number of semantic and structural optimizations. These redundancies...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999